package game.savecameron;

import game.sprite.PlayerSprite;
import java.awt.Graphics;
import java.awt.Point;
import java.util.Set;
/**
 * Devil character to be controlled by user.
 * By default, moves around with WASD, shoots w/ ' ',
 * and looks at mouse.
 * 
 * @author rwb10
 * 
 */
public class UserDevil extends PlayerSprite {
    private boolean shooting;
    private boolean alive;
    int tReload;

    public UserDevil (Point startLocation, String spriteSet, boolean isActive) {
        super(startLocation, spriteSet, isActive);
        alive = true;
    }

    public void kill () {
        alive = false;
    }

    public void die (Graphics pen) {
        // TODO Auto-generated method stub

    }

    @Override
    public void applyFriction () { }

    @Override
    public void update () {
        Point mousePosition = getInMouse();
        look(mousePosition);
        Set<Integer> inputs = getPressedArray();
        if (!inputs.isEmpty())
            compileInput(inputs);
        else {
            this.getVelocity().setX(0);
            this.getVelocity().setY(0);
        }
        checkEdges();
        // compileInput(keyPressed);
        move();
        if (shooting)
            shoot(game);
        shooting = false;
        tReload++; // Increase the counter that serves as a "reload time" for
        // shooting.
    }

    private void checkEdges () {
        // TODO Auto-generated method stub
        
    }

    private Set<Integer> getPressedArray () {
        // TODO Auto-generated method stub
        return null;
    }

    private void look (Point mousePosition) {
        // TODO Auto-generated method stub
        
    }

    private Point getInMouse () {
        // TODO Auto-generated method stub
        return null;
    }

    private void compileInput (Set<Integer> inputs) {
        // TODO Auto-generated method stub

    }

}
